package com.deu.tsf.controller;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.ResponseBody;
import com.baomidou.mybatisplus.plugins.Page;
import com.deu.tsf.common.result.JsonResult;
import com.deu.tsf.common.utils.StringUtil;
import com.deu.tsf.entity.DbsInfo;
import com.deu.tsf.service.IDbsInfoService;

import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;

/**
* @Description: Dbs设备管理控制层
* @author Y.Jin
* @date 2016年12月19日 下午2:32:46
 */
@Api(tags="Dbs设备管理控制层")
@Controller
@RequestMapping("/dbsinfo")
public class DbsInfoController extends BaseController{
	
	@Autowired
	private IDbsInfoService dbsInfoService;
	
	/**
	 * <p>
	 * 北斗设备信息列表 JSON 格式
	 * </p>
	 * @return
	 */
	@ApiOperation(value="北斗设备信息列表")
	@RequestMapping(value="listJson",method = RequestMethod.GET)
	@ResponseBody
	public JsonResult list(Page<DbsInfo> page){
		JsonResult json = new JsonResult();
		json.setData(dbsInfoService.selectPage(page, null));
		return json;
	} 
	
	/**
	 * 删除设备信息
	 * @param id
	 * @return
	 */
	@ApiOperation(value="删除设备信息")
	@RequestMapping(value="{id}/del",method=RequestMethod.GET)
	public JsonResult del(@PathVariable Integer id){
		JsonResult json = new JsonResult();
		dbsInfoService.deleteById(id);
		return json;
	}
	
	/**
	 * 更新DbsInfo信息
	 * @param dbsInfo
	 * @return
	 */
	@ApiOperation(value="更新DbsInfo信息")
	@RequestMapping(value="update",method=RequestMethod.POST)
	@ResponseBody
	public JsonResult update(DbsInfo dbsInfo){
		JsonResult json = new JsonResult();
		if(dbsInfo != null){
			dbsInfoService.updateById(dbsInfo);
		}
		return json;
	}
	
	/**
	 * Get 北斗设备信息
	 * @param id 编号
	 * @return
	 */
	@ApiOperation(value="Get 北斗设备信息")
	@RequestMapping(value="get",method=RequestMethod.GET)
	@ResponseBody
	public JsonResult get(@PathVariable Integer id){
		JsonResult json = new JsonResult();
		DbsInfo dbsInfo = dbsInfoService.selectById(id);
		if(dbsInfo != null){
			json.setData(dbsInfo);
		}
		return json;
	}
	
	/**
	 * 添加北斗设备信息
	 * @param dbsInfo <p>参数接收</p>
	 * @return
	 */
	@ApiOperation(value="添加北斗设备信息")
	@RequestMapping(value="add",method=RequestMethod.POST)
	@ResponseBody
	public JsonResult add(DbsInfo dbsInfo){
		JsonResult json = new JsonResult();
		if(StringUtil.isBlank(dbsInfo.getCdmaNO())){
			json.setCode(-1);
			json.setMsg("CdmaNO can not null");
			return json;
		}
		if(StringUtil.isBlank(dbsInfo.getTerminalNO())){
			json.setCode(-1);
			json.setMsg("TerminalNO can not null");
			return json;
		}
		if(StringUtil.isBlank(dbsInfo.getVehicleNO())){
			json.setCode(-1);
			json.setMsg("VehicleNO can not null");
			return json;
		}
		dbsInfoService.insert(dbsInfo);
		return json;
	}
}
